package com.mayikt.product.es.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;

import java.io.Serializable;
import java.time.LocalDateTime;
//indexName 索引名称 type：索引类型
@Document(indexName = "product",type = "product")
@Data
public class EsProduct implements Serializable {
    //@Field
    //表示这列的值是否索引，表示该域是否可被搜索
    //是否分词：表示搜索的时候是整体匹配还是分词匹配
    //是否存储：是否显示在页面上
    //analyzer 按什么分词类型存储
    //searchAnalyzer 按什么分词类型查询
    /** 主键ID */
    private Long id;
    /** 类型ID */
    private Integer categoryId;
    /** 名称 */
    @Field(index = true,analyzer = "ik_max_word",searchAnalyzer = "ik_max_word")
    private String name;
    /** 小标题 */
    private String subtitle;
    /** 主图像 */
    private String mainImage;
    /** 小标题图像 */
    private String subImages;
    /** 描述 */
    private String detail;
    /** 商品规格 */
    private String attributeList;
    /** 价格 */
    private Double price;
    /** 库存 */
    private Integer stock;
    /** 状态 */
    private Integer status;

    /** 创建人 */
    private String createdBy;
    /** 创建时间 */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createdTime;

    /** 更新时间 */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updatedTime;
}
